C语言:这题怎么解:"输入16进制数,最后输出10进制数,用函数调用"

来源:百度知道 编辑:UC知道 时间:2024/07/02 12:44:05
现在就要用谢谢

#include<stdio.h>

int a;

void input()
{scanf("%x",&a);}

void output()
{printf("%d\n",a);}
int main()
{
input();
output();
return 0;
}

#include<stdio.h>
long fun(char*s);
#define N 50
void main()
{
long m;
char s[N];
printf("输入十六进制数: ");
scanf("%s",s);
m=fun(s);

printf("%ld",m);
}

long fun(char*s)
{
int i,t;
long sum=0;
for(i=0;s[i];i++)
{
if(s[i]<='9')t=s[i]-'0';
else t=s[i]-'a'+10;
sum=sum*16+t;
}
return sum;
}